from .basic import CatalogBasic, CatalogForm

class CatalogFunctionFrom(CatalogForm):
    def __init__(self, function_name: str, arg_count: int, callback, is_agg=False):
        self.function_name = function_name
        self.arg_count = arg_count
        self.callback = callback
        self.agg_function = is_agg

    def __repr__(self):
        return f'Function: {self.function_name}, ArgCount: {self.arg_count}, Agg: {self.agg_function}'

class CatalogFunction(CatalogBasic):
    def __init__(self):
        super().__init__('function_information')
    
    # function 不需要序列化，所以这里重写覆盖父类的实现
    def load(self):
        pass
    
    def dump(self):
        pass
